System and method for interference cancellation

ABSTRACT

A system for interference cancellation, preferably including a plurality of analog taps. Each analog tap preferably includes one or more scalers and/or phase shifters, and can optionally include one or more delays. The system for interference cancellation can optionally be integrated with and/or otherwise associated with a MIMO communication system. A method for interference cancellation, preferably including: determining operation parameters and operating based on the determined parameters. The method is preferably performed using the system for interference cancellation (e.g., and/or an associated MIMO communication system), but can additionally or alternatively be performed using any other suitable system.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application Ser.No. 63/287,787, filed on 9 Dec. 2021, U.S. Provisional Application Ser.No. 63/316,199, filed on 3 Mar. 2022, U.S. Provisional Application Ser.No. 63/362,289, filed on 31 Mar. 2022, and U.S. Provisional ApplicationSer. No. 63/403,658, filed on 2 Sep. 2022, each of which is incorporatedin its entirety by this reference.

TECHNICAL FIELD

This invention relates generally to the communications field, and morespecifically to a new and useful system and method for interferencecancellation in the communications field.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1A is a schematic representation of an embodiment of a system forinterference cancellation.

FIG. 1B is a schematic representation of an example of the system forinterference cancellation.

FIG. 2A is a schematic representation of an embodiment of a method forinterference cancellation.

FIG. 2B is a schematic representation of an example of the method.

FIG. 2C is a schematic representation of an embodiment of an element ofthe method.

FIG. 3A is a schematic representation of a first embodiment of a MIMOcommunication system.

FIG. 3B is a schematic representation of a first embodiment of thesystem for interference cancellation integrated with the MIMOcommunication system.

FIG. 3C is a schematic representation of a first example of the systemfor interference cancellation integrated with the MIMO communicationsystem.

FIG. 3D is a schematic representation of a second embodiment of thesystem for interference cancellation integrated with the MIMOcommunication system.

FIG. 3E is a schematic representation of a second example of the systemfor interference cancellation integrated with the MIMO communicationsystem.

FIG. 4A is a schematic representation of a second embodiment of a MIMOcommunication system.

FIG. 4B is a schematic representation of a third example of the systemfor interference cancellation integrated with the MIMO communicationsystem.

FIG. 5A is a schematic representation of an example of the MIMOcommunication system.

FIG. 5B is a schematic representation of a second example of the systemfor interference cancellation integrated with the MIMO communicationsystem.

FIG. 6A is a schematic representation of a third embodiment of a MIMOcommunication system.

FIG. 6B is a schematic representation of a third embodiment of thesystem for interference cancellation integrated with the MIMOcommunication system.

FIG. 7A is a schematic representation of a fourth embodiment of a MIMOcommunication system.

FIG. 7B is a schematic representation of a fourth embodiment of thesystem for interference cancellation integrated with the MIMOcommunication system.

FIG. 7C is a schematic representation of a fourth example of the systemfor interference cancellation integrated with the MIMO communicationsystem.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The following description of the preferred embodiments of the inventionis not intended to limit the invention to these preferred embodiments,but rather to enable any person skilled in the art to make and use thisinvention.

1. Overview.

A system 100 for interference cancellation preferably includes aplurality of analog taps 110 (e.g., as shown in FIGS. 1A-1B). Eachanalog tap 110 preferably includes one or more scalers 111 and/or phaseshifters 112, and can optionally include one or more delays 113. Thesystem 100 preferably functions to increase blocker isolation and/oradjacent-channel leakage (ACL) isolation (e.g., to reduce blockerchannel and/or ACL channel intensities), and can additionally oralternatively function to increase beamforming gain (e.g., transmitand/or receive beamforming gain); however, the system 100 canadditionally or alternatively have any other suitable functionality.

A method 300 for interference cancellation preferably includesdetermining operation parameters S310 and operating based on thedetermined parameters S320 (e.g., as shown in FIG. 2A). The method 300is preferably performed using the system 100 (e.g., and/or an associatedcommunication system 200), but can additionally or alternatively beperformed using any other suitable system.

2. Benefits.

Variants of the technology can optionally confer one or more benefits.In implementing typical sub-band full duplex (SBFD) communicationschemes, a MIMO communication system (e.g., a gNodeB (gNB), such as a 5Gor 6G gNB) will typically operate a first subset of antennas in transmitmode concurrent with operating a second subset of antennas in receivemode, wherein transmit and receive are handled on nearby frequencies(e.g., wherein the associated frequency allocation may be dynamic and/orrapidly-changing). This can result in significant interference betweentransmit and receive channels which cannot typically be alleviated bythe use of fixed filters. Some variants of the technology can enableeffective and/or efficient isolation between the transmit and receivechannels, in the face of these challenges. However, the benefitsdescribed below can additionally or alternatively be realized in anyother suitable applications and/or under any other suitable constraints.

First, some variants of the technology can enable a large amount ofisolation (e.g., 30-40 dB) while preserving greater beamformingflexibility (e.g., a larger number of beamforming degrees of freedom)for optimizing gain associated with communication with other systems(e.g., optimizing transmit array gain toward intended downlink userequipment, optimizing receive array gain from intended uplink userequipment, etc.). In typical systems that use beamforming for isolation(e.g., by using transmit beamforming to create a deep null at eachreceive antenna of an array), if high interference cancellation isrequired, little or no beamforming flexibility may remain for gainoptimizations. For example, in a MIMO communication system with an equalnumber of transmit and receive antennas, no transmit beamforming degreesof freedom would typically remain after creating such nulls; or, if apractical degree of beamforming is dedicated to gain optimizations, thenbeamforming-based isolation may typically be limited to 15-20 dB orless. In contrast, some variants of the technology can exploit acombination of beamforming and interference cancellation to overcomesuch limitations.

Second, some variants of the technology can enable effectiveinterference cancellation-based isolation for which complexity scalesapproximately linearly with the number of antennas in a MIMO system(e.g., rather than scaling approximately quadratically). Typical systemsmay require interference cancellation between each antenna and everyother antenna of the system, leading to quadratic scaling of bothcancellation hardware and control complexity. In contrast, some variantsof the technology can rely on interference cancellation between eachantenna and only a fixed number of other antennas (e.g., one otherantenna, two other antennas, three other antennas, etc.), wherein thefixed number does not scale with the total number of antennas, therebyleading to only linear scaling of both hardware and control complexity.

Third, some variants of the technology can drastically increase thetractability of optimizing blocker and/or adjacent channel leakage (ACL)rejection. For example, optimization of ACL rejection is typically adifficult signal domain problem, dependent on non-linear functions ofthe transmit signal (e.g., arising from non-linear behavior of thetransmit amplifiers). However, by modifying this optimization problem toremove signal-dependent considerations, some variants of the technologycan enable performance of a symmetric (and possibly concurrent)channel-domain optimization of both ACL rejection and blocker rejection,simplifying the problem.

Fourth, some variants of the technology can enable fast (e.g.,real-time, substantially real-time, and/or near-real-time), efficient,and/or inexpensive (e.g., requiring only inexpensive hardware)optimization of beamforming and/or interference cancellation controlparameters. For example, by utilizing a staged and/or iterativeoptimization process, some variants of the technology can convert theoptimization from a difficult non-linear problem to a sequence or cycleof simple linear problems.

However, one or more variants of the technology can additionally oralternatively confer any other suitable benefits.

3. Communication System.

The system 100 for interference cancellation is preferably associatedwith (e.g., connected to) a multiple-input multiple-output (MIMO)communication system 200, more preferably a massive MIMO (mMIMO)communication system. In some embodiments, the MIMO system 200 is and/orincludes a radio transceiver of a wireless communication network, suchas a 5G NR transceiver; in such embodiments, the MIMO system 200 ispreferably (part or all of) a base station (e.g., gNB) of the network,but can alternatively be (part or all of) user equipment (UE) and/or anyother suitable elements of the network. The MIMO system 200 ispreferably configured (and/or operable) to communicate (e.g., with UEsof the network) using a sub-band full duplex (SBFD) communicationscheme, but can additionally or alternatively be configured (and/oroperable) in any other suitable manner.

The frontend of the MIMO system 200 preferably includes a plurality ofantenna elements 210 (e.g., 32, 64, 128, 24-48, 48-96, 96-144, 144-256,and/or more than 256 antenna elements, etc.) and a plurality of RFchains 220, and can optionally include one or more antenna couplers 230(e.g., as shown in FIGS. 3A-3B, 3D, and/or 5A-5B).

The RF chains 220 can include transmit chains, receive chains,transmit/receive chains, such as RF chains switchable betweentransmission and reception modes, and/or any other suitable RF chains.Each RF chain 220 is preferably connected to a different antenna element210; alternatively, some or all antenna elements can be connected tomultiple RF chains, such as wherein an antenna element is connected(e.g., via a circulator and/or duplexer) to one transmit chain and onereceive chain (e.g., a first transmit chain and first receive chainconnected to a first antenna element via a first circulator or duplexer,a second transmit chain and second receive chain connected to a secondantenna element via a second circulator or duplexer, etc.). Eachtransmit chain (and/or transmit/receive chain) preferably includes apower amplifier (PA) 221. The PA preferably functions to amplify atransmit signal and provide the amplified transmit signal to an antennaelement 210 (e.g., the antenna element to which the transmit chain isconnected). Each receive chain (and/or transmit/receive chain)preferably includes a low-noise amplifier (LNA) 222. The LNA preferablyfunctions to amplify a receive signal received from an antenna element210 (e.g., the antenna element to which the receive chain is connected)and provide the amplified receive signal to a backend of the MIMOcommunication system 200. Each transmit/receive chain preferablyincludes a PA 221, an LNA 222, and a switch 223 configured to connectthe antenna element to either the PA or the LNA (e.g., thereby switchingthe transmit/receive chain between the transmission mode and thereception mode).

The antenna couplers 230 (e.g., beamforming calibration couplers) arepreferably each coupled to a different antenna element 210 of the MIMOsystem 200. In examples, the antenna couplers can function to enablecalibration of beamforming parameters for the MIMO system 200.

The MIMO system 200 preferably defines a plurality of blocker channelsand ACL channels, wherein each receive antenna is associated with adifferent blocker channel and each transmit antenna is associated with adifferent ACL channel. The blocker channel associated with a particularreceive antenna can be defined as the combined effect, at the particularreceive antenna, of transmissions within the transmit frequency rangefrom all transmit antennas of the MIMO system. The ACL channelassociated with a particular transmit antenna can be defined as thecombined effect, at all receive antennas (e.g., following receive-sidebeamforming), of transmissions within the receive frequency range fromthe particular transmit antenna.

The MIMO system 200 is preferably operable tos perform beamformingand/or null-steering. However, the MIMO system 200 can additionally oralternatively have any other suitable functionality. Further, the MIMOsystem 200 can additionally or alternatively include any other suitableelements in any suitable arrangement. However, the system 100 canalternatively not be integrated and/or otherwise associated with a MIMOcommunication system, and/or can additionally or alternatively beintegrated and/or associated with any other suitable systems.

4. System.

As described above, each analog tap 110 of the system 100 forinterference cancellation preferably includes one or more scalers inand/or phase shifters 112, and can optionally include one or more delays113 (e.g., as shown in FIG. 1B). A person of skill in the art willrecognize that the scaler, phase shifter, and/or delay can be arrangedin any suitable order within the analog tap (e.g., order relative tosignal propagation through the analog tap); for example, the scaler canbe arranged before the phase shifter (e.g., wherein the analog tap firstscales and then phase shift signals propagating through the analog tap)or after the phase shifter (e.g., wherein the analog tap first phaseshifts and then scales signals propagating through the analog tap).

The scaler 111 preferably functions to scale (e.g., attenuate and/oramplify) the amplitude of the signal propagating through the analog tap.The scaler is preferably operable to be configured between differentscaling factors, such as operable to be controlled throughout acontinuum of possible scale values (e.g., operable to scale thepropagating signal by any factor between 1 and a minimum value, such as0.1, 0.03, 0.01, etc.). However, the analog taps can additionally oralternatively include any other suitable scalers.

The phase shifter 112 preferably functions to shift the phase of thesignal propagating through the analog tap. The phase shifter ispreferably operable to be configured between different phase shiftamounts, such as operable to be controlled throughout a continuum ofpossible phase shift values (e.g., operable to shift the phase of thepropagating signal by any value between o and a maximum value, such asπ, π/2, or π/4 radians, etc.). However, the analog taps can additionallyor alternatively include any other suitable phase shifters.

If present, the delay 113 preferably functions to delay the signalpropagating through the analog tap. The delay is preferably operable tobe configured between different delay times, such as operable to becontrolled throughout a continuum of possible delay values (e.g.,operable to delay the propagating signal by any value between a minimumvalue, such as 0 or a value greater than zero, and a maximum value).Additionally or alternatively, the delay can be operable to impose afixed delay, to switch between substantially zero delay and one or morefixed delay values, and/or be operable in any other suitable manner.However, the analog taps can additionally or alternatively include anyother suitable delays.

As described above, some or all components of the analog taps (e.g.,scalers 111, phase shifters 112, delays 113, etc.) are preferablyconfigurable (e.g., operable to alter one or more operationalcharacteristics, such as scaling factor, phase shift amount, delay time,etc.). Such configurability can be achieved by use of tunable elements(e.g., voltage-controlled elements, current-controlled elements,manually-tunable elements, etc.), by use of switched banks of separateelements (e.g., switched banks of non-tunable elements), and/or in anyother suitable manner.

Each analog tap 110 of the system 100 is preferably coupled to the MIMOsystem 200 (e.g., as shown in FIGS. 3B, 3D, and/or 5B). In particular,each analog tap 110 is preferably coupled between two antenna elements210 (e.g., via the antenna couplers 230), more preferably coupledbetween a transmit antenna and a receive antenna. Alternatively, inexamples in which the MIMO system includes one or more phased antennaarrays (e.g., in which the MIMO system is configured to perform analogand/or hybrid beamforming), each analog tap can be coupled between twophased antenna arrays (e.g., wherein, the tap preferably samples atransmit signal from the transmit chain upstream of the transmit arrayphase shifters and preferably injects a cancellation signal downstreamof the receive array phase shifters; accordingly, one or more phaseshifters are preferably arranged between the analog tap and some or allantennas of the phased array), such as shown by way of examples in FIGS.6B and/or 7B-7C. Each analog tap preferably functions to sample atransmit signal from a transmit chain and/or to inject a cancellationsignal into a receive chain. The tap preferably samples a transmitsignal downstream of the power amplifier (after transmit signalamplification), which can enable the sampling (and/or cancellation) ofPA nonlinearities. On the receive side, the analog tap preferablyinjects the cancellation signal upstream of the LNA (before receivesignal amplification), which can enable cancellation of blocker signals,thereby reducing the magnitude of blocker signals that reach the LNA(e.g., thus preventing these blocker signals from saturating the LNA).In examples in which multiple RF chains (e.g., one transmit chain andone receive chain) are connected to a single antenna element (e.g., viaa circulator and/or duplexer), the analog taps can additionally oralternatively be connected between such RF chains connected to the sameantenna element (e.g., connected across the circulator and/or duplexer,in a manner analogous to connection between two different antennaelements).

For a communication system 200 with a MIMO frontend including existingbeamforming calibration couplers, these analog taps can share thosecouplers rather than using separate tap-specific couplers. Accordingly,in these examples, the system 100 can avoid increased insertion lossand/or sensitivity loss associated with the use of additional couplersin the frontend of the communication system 200.

The system 100 preferably includes at least as many analog taps 110 asthere are antenna elements 210 of the MIMO communication system 200.More preferably, the system 100 preferably includes at least one analogtap 110 connected to each antenna element 210 (e.g., each transmitelement and each receive element); a person of skill in the art willrecognize that, as each analog tap is typically connected between atransmit element and a receive element, having at least as many analogtaps as there are antenna elements will result in an average of twoanalog tap connections for each antenna element (e.g., if there areexactly as many analog taps as there are antenna elements and the tapconnections are distributed evenly between the antenna elements, theneach transmit element will be connected to two analog taps and thusconnected via the analog taps to two different receive elements, andeach receive element will be connected to two analog taps and thusconnected via the analog taps to two different transmit elements. Thesystem 100 can optionally include additional analog taps. For example,the system can include one or more additional analog taps, preferablywherein each of these taps includes a delay 113 (e.g., wherein the firstset of taps may not include delays). These additional taps can beconfigured to perform multipath interference cancellation (e.g., whereinthe delay elements thereof can be configured to account for longer delaytimes associated with the interference signal propagation time).

However, the system 100 preferably includes substantially fewer analogtaps than the product of the number of transmit elements and the numberof receive elements; that is, for a MIMO communication system 200 with Mtransmit elements and N receive elements, the number of analog taps inthe system 100 is preferably substantially less than M*N (e.g., wherein‘substantially fewer’ can indicate that the number of analog taps isless than 80%, 75%, 50%, 35%, 25%, 20%, 15%, or 10% of M*N, and/or thatthe number of analog taps is no more than or substantially no more thanx√{square root over (M*N)} for x=2, 2.31, 2.5, 3, 4, 4.62, or 5, etc.).Such a limit can significantly reduce the hardware complexity ofintegrating all the analog taps with the MIMO communication systemand/or reduce the control complexity of optimizing (or otherwisecontrolling) the operation parameters of each analog tap (e.g., whereinthese reductions in complexity are as compared with a system includingM*N analog taps, more than M*N analog taps, or insubstantially fewerthan M*N analog taps).

In some such examples, the system 100 can include exactly M+N taps,exactly 2(M+N) taps, exactly 4(M+N) taps, between M+N and 2(M+N) taps,between 2(M+N) and 4(M+N) taps, or any other suitable number of taps. Ina first example, in which M=N, a system may include M+N=2N=2√{squareroot over (M*N)} taps or 2(M+N)=4√{square root over (M*N)} taps. In asecond example, in which M=3N, a system may include M+N=4N=4√{squareroot over (M*N/3)}≈2.31√{square root over (M*N)} taps or2(M+N)≈4.62√{square root over (M*N)} taps. Additionally oralternatively, in some examples (e.g., in which the number of analogtaps is substantially less than M*N), the number of analog taps may beno more than or substantially no more than x(M+N) for x=2, 3, 4, 5 orany other suitable value of x. However, the system 100 can additionallyor alternatively include any other suitable number of analog taps.

In some examples, multiple logical taps of the system 100 can use asingle antenna connection (e.g., with one or more couplers, such assplitters and/or summation elements as appropriate to enable suchconnections). In such examples, the numerosity and connectivity of theanalog taps described above preferably applies to these logical taps(e.g., rather than to physical connections).

In a first example, the MIMO system 200 includes an equal number oftransmit and receive elements (e.g., antennas). In a first specificexample of the first example, the first transmit element (TX₁) and thesecond transmit element (TX₂) are each connected to the first receiveelement (RX₁) and the second receive element (RX₂), such as shown by wayof example in FIG. 3C. In this specific example, the TX₁ coupler splitsthe sampled signal onto two taps (110 a and 110 b), each including ascaler 111 and phase shifter 112. Analogously, the TX₂ coupler splitsits sampled signal onto taps 110 c and 110 d, each having its own scalerin and phase shifter 112. Taps 110 a and 110 c are both coupled to RX₁(e.g., wherein the RX₁ coupler sums the signals from the two taps andcouples them to the antenna), and analogously, taps 110 b and 110 d areboth coupled to RX₂ (e.g., wherein the RX₂ coupler sums the signals fromthe two taps and couples them to the antenna). Similarly, the third andfourth transmit elements (TX₃ and TX₄) are each connected to the thirdand fourth receive elements (RX₃ and RX₄) in an analogous manner, thefifth and sixth transmit elements (TX₅ and TX₆) are each connected tothe fifth and sixth receive elements (RX₅ and RX₆) in an analogousmanner, and so on.

In a second specific example of the first example, every receive antennaRX_(i) is connected to transmit antennas TX_(i) & TX_(i+1) (modulo N),such as shown by way of example in FIG. 3E. Accordingly, RX₁ isconnected to TX₁ & TX₂; RX₂ is connected to TX₂ & TX₃, and so on(wherein the final receive element RX_(N) is connected to TX₁ & TX_(N)).In this specific example, the TX₁ coupler splits the sampled signal ontotwo taps (110 a and 110 b), each including a scaler in and phase shifter112. Analogously, the TX₂ coupler splits its sampled signal onto taps110 c and 110 d, each having its own scaler 111 and phase shifter 112;the TX₃ coupler splits its sampled signal onto taps 110 e and 110 f,each having its own scaler 111 and phase shifter 112, the TX₄ couplersplits its sampled signal onto taps 110 g and 110 h, each having its ownscaler 111 and phase shifter 112; and so on. Taps 110 b and 110 c areboth coupled to RX₁ (e.g., wherein the RX₁ coupler sums the signals fromthe two taps and couples them to the antenna); taps 110 d and 110 e areboth coupled to RX₂ (e.g., wherein the RX₂ coupler sums the signals fromthe two taps and couples them to the antenna); taps 110 f and 110 g areboth coupled to RX₃ (e.g., wherein the RX₃ coupler sums the signals fromthe two taps and couples them to the antenna); and so on in an analogousmanner, typically with the exception of the highest-index receiver,wherein the first tap (110 a) and the last tap are both coupled to thishighest-index receiver (e.g., for a system in which RX₄ is thehighest-index receiver, taps 110 a and 110 h are both coupled to RX₄,),preferably wherein the coupler for this highest-index receiver sums thesignals from the two taps and couples them to the antenna.

In a second example, the MIMO system 200 includes a 3:1 ratio oftransmit to receive elements (wherein the MIMO system 200 includes threetimes as many transmit elements as receive elements), such as shown byway of example in FIG. 4A. In this example, each receive element ispreferably connected (e.g., by a separate analog tap 110) to fourdifferent transmit elements. For example, such connectivity can beachieved by connecting every receive antenna RX_(i) to transmit antennasTX_(3i−2), TX_(3i−1), TX_(3i), and TX_(3i+1) (modulo N), such as shownby way of example in FIG. 4B. Accordingly, RX₁ is connected to TX₁−TX₄,RX₂ is connected to TX₄−TX₇, and so on. In this example, the transmitantennas can either be coupled to a single analog tap or can be coupledto two analog taps (e.g., each connected to a different receiveelement). On the receive side, each receive element can be connected tofour different analog taps (e.g., via a coupler that sums thecancellation signals from the four taps and couples them all to theantenna).

However, the system 100 can additionally or alternatively define anyother suitable network of taps 110 connecting the antenna elements 210of the MIMO system 200. Further, the system 100 can additionally oralternatively include any other suitable elements in any suitablearrangement.

The system 100 (e.g., the analog taps 110 thereof) is described aboveregarding its connections to an mMIMO communication system 200 operableto perform digital beamforming. The system 100 can analogously beconfigured to operate with a communication system 200 operable toperform analog beamforming (e.g., wherein a single transmit chain feedsa phased array of transmit antennas and/or a single receive chainaccepts signals from a phased array of receive antennas, such as shownby way of example in FIGS. 6A-6B) and/or hybrid beamforming (e.g.,wherein each transmit chain feeds a separate phased array of transmitantennas and/or each receive chain feeds a separate phased array ofreceive antennas, such as shown by way of example in FIGS. 7A-7C),preferably including one or more phased arrays 201 of antennas, whereineach such phased array 201 includes a plurality of antennas 210 andphase shifters 212 operable to phase shift some antennas of the arrayrelative to others. In examples in which multiple transmit elementsshare a PA (e.g., in communication systems using analog or hybridtransmit beamforming), fewer taps 110 may be utilized (e.g., one tapconnected to each post-PA signal, such as before the amplified transmitsignal is split to go to the multiple transmit elements). Analogously,in examples in which multiple receive elements share an LNA (e.g., incommunication systems using analog or hybrid receive beamforming), fewertaps 110 may be utilized (e.g., one tap connected to each pre-LNAsignal, such as after the signal from multiple receive elements has beencombined). However, the system 100 can additionally or alternativelyhave any other suitable functionality and/or can be associated with(e.g., coupled to, configured to be coupled to, and/or operable to workin concert with) any other suitable MIMO communication system 200.

5. Method.

As described above, the method 300 for interference cancellationpreferably includes determining operation parameters S310 and operatingbased on the determined parameters S320.

Determining operation parameters S310 preferably functions to determineparameters for effective beamforming and channel isolation. S310 morepreferably functions to determine beamforming and RF cancellationparameters (e.g., wherein the RF cancellation parameters are preferablydetermined based on channel-domain considerations, rather than based onsignal-domain considerations). In some embodiments, the parameters aredetermined in order to satisfy one or more of the following goals.First, to achieve high (e.g., to maximize) transmit gain to a downlinktarget (e.g., UE) or set of downlink targets. Second, to achieve high(e.g., to maximize) receive gain from one or more uplink targets (e.g.,UEs). Third, to achieve sufficient (e.g., greater than or equal to 100dB) blocker isolation for each receive element of the MIMO system (orfor a subset thereof). Fourth, to achieve sufficient (e.g., greater thanor equal to 100 dB) adjacent channel leakage (ACL) isolation from eachtransmit element of the MIMO system (or a subset thereof).

In a typical mMIMO system, system operation may include determiningtransmit and/or receive beamforming parameters, such as to maximizetransmit and/or receive gains (e.g., analogous to the first and secondgoals above). Such optimization is typically performed independently forthe transmit beamforming parameters and the receive beamformingparameters.

In contrast, S310 preferably includes performing optimization ofbeamforming and RF cancellation parameters together (e.g., of all suchparameters or a subset thereof). This optimization preferably functionsto satisfy all four of the goals described above (but can additionallyor alternatively be performed to satisfy any subset thereof and/or anyother suitable goals). Performing such optimization(s) can includesimulating expected results associated with candidate parameter values(e.g., wherein objective functions are evaluated based on the simulatedresults), testing and/or measuring (e.g., in S320) actual performance ofthe system and/or the MIMO system when configured according to candidateparameter values (e.g., wherein objective functions are evaluated basedon the measured results), and/or evaluating objective functions in anyother suitable manner. Further detail regarding an example of suchoptimization is provided in the Appendix.

In a first embodiment, S310 includes joint optimization (e.g., in thechannel domain, not in the signal domain) of all beamforming and RFcancellation parameters for all four goals. This joint optimization istypically a non-linear optimization problem and can be difficult tosolve.

Accordingly, in a second embodiment, S310 can include the stagedoptimization (e.g., in the channel domain, not in the signal domain) ofsubsets of the parameters; in this embodiment, S310 preferably includesoptimizing beamforming parameters 5311 and/or optimizing RF cancellationchannel parameters S312, but can additionally or alternatively includeany other suitable optimizations. This staged optimization is preferablyiterative, in which some or all stages are repeated (e.g., continuously,periodically, etc.; indefinitely, throughout operation of the system 100and/or MIMO system 200, until one or more convergence criteria arereached, etc.); for example, S310 can include alternating (e.g.,continuously) between performance of S311 and S312. For repeatediterations, optimizations preferably begin from the state determinedduring the previous iteration of the optimization (but can additionallyor alternatively begin from a fixed initialization state and/or from anyother suitable starting state). In some examples, the optimizationproblems in this embodiment can be much easier to solve as compared withjoint optimization of all parameters.

In some variants of the second embodiment, the staged optimizationprocess can optionally be followed by joint optimization of some or allof the parameters (e.g., using a local optimization approach, such asgradient descent; optimizing for some or all of the criteria describedabove, such as maximizing gain and/or ensuring that isolation exceeds athreshold value).

Optimizing beamforming parameters S311 preferably includes optimizingthe transmit and receive beamforming coefficients (e.g., jointlyoptimizing all such coefficients or any suitable subset thereof), butcan additionally or alternatively include optimizing any otherbeamforming parameters (e.g., phase shift values, such as for use inanalog and/or hybrid beamforming and/or for use with any other suitablephased antenna arrays) and/or any other suitable parameters of any kind.The beamforming parameters are preferably optimized based on one or moreobjectives associated with transmit and receive gain for target UEs(e.g., corresponding to the first and second goals described above); forexample, the transmit beamforming coefficients can be optimized based ontransmit gain for one or more target downlink UEs and/or the receivebeamforming coefficients can be optimized based on receive gain for oneor more target uplink UEs. The beamforming parameters can additionallyor alternatively be optimized based on one or more objectives associatedwith isolation, such as blocker and/or ACL isolation (e.g., as describedabove regarding the third and fourth goals); for example, transmitbeamforming parameters can additionally or alternatively be optimizedbased on blocker channel isolation for each receive element (or a subsetthereof), and/or receive beamforming parameters can additionally oralternatively be optimized based on ACL isolation for each receiveelement (or a subset thereof). In examples in which one or moreoptimization objectives including isolation aspects are used in S311, itmay be desirable to ensure that beamforming optimization prioritizesgain performance over isolation performance (e.g., as the RFcancellation channel parameters can also be used to increase isolationperformance, but typically cannot be used to increase gain performance).

In some examples, the optimization can be performed based on a singleobjective function that depends on both the gain performance and theisolation performance. In some such examples, the extent to which thesedifferent aspects affect the objective function can be adjustable (e.g.,dynamically adjustable), such as wherein one or more such aspects isassociated with a weight parameter (e.g., wherein the weight parametercan be altered for different iterations of S311). For example, it may bedesirable to perform initial iterations of S311 using a low weight orzero weight for isolation performance (e.g., thereby ensuring thatadequate beamforming gain can be achieved), and then perform lateriterations of S311 using a higher weight for isolation performance(e.g., gradually increasing the isolation performance weighting from theinitial value to a final desired value).

Additionally or alternatively, the optimization can be constrained basedon observed and/or expected performance (e.g., beamforming gainperformance). For example, one or more historical or expected gainperformance values (e.g., best achievable gain, typically-achievablegain, etc.) can be stored, one or more threshold values can bedetermined based on the stored values (e.g., 1 dB worse than the bestperformance, equal to the typically-achievable performance, etc.), andfuture iterations of the optimization can be constrained such that thegain performance (e.g., transmit and/or receive gain performance) is notallowed to be worse than the threshold value(s). In a specific example,early iterations of S311 are performed to optimize primarily forbeamforming gain performance (e.g., with little or no weight given toisolation performance in a combined objective function), and lateriterations of S311 may be performed with increased emphasis on isolationperformance (e.g., increasing the weighting of the isolation performancein a combined objective function), while ensuring that beamformingperformance remains adequate by constraining the optimization such thatthe beamforming performance may not be less than the threshold value(s).

However, S311 can additionally or alternatively include optimizing thebeamforming parameters (and/or any other suitable parameters) in anyother suitable manner.

Optimizing RF cancellation channel parameters S312 preferably includesoptimizing one or more parameters (e.g., amplitude, phase, and/or delay)for each analog tap (or a subset thereof), but can additionally oralternatively include optimizing any other cancellation parametersand/or any other suitable parameters of any kind. The RF cancellationchannel parameters are preferably optimized based on one or moreobjectives associated with blocker isolation and ACL isolation (e.g.,corresponding to the third and fourth goals described above).

For system and/or MIMO system operation, it is typically preferable tohave very poor isolation for a small subset of antennas (e.g., whereinthese antennas can be deactivated in response to the very poorisolation) and good isolation (e.g., exceeding a threshold value, suchas 100 dB) for the remaining antennas, rather than to have moderatelydegraded isolation for all antennas or for a larger subset of antennas;additionally or alternatively, it is typically preferable to haveisolation above a threshold value (e.g., threshold corresponding to goodisolation, such as 100 dB) for all antennas, rather than to haveisolation well above the threshold value for a first subset of antennasand isolation below the threshold value for a second subset of antennas.Accordingly, the objective preferably includes a non-linear costfunction associated with the isolation performance, such as wherein thecost is not affected or only minimally affected by changes in isolationvalues above the threshold (e.g., zero slope or low slope above thethreshold), and/or wherein the cost is not affected or only minimallyaffected by changes in isolation values well below the threshold (e.g.,below a low performance threshold associated with antenna deactivation).For example, S312 can include attempting to reach the thresholdisolation value (e.g., greater than or equal to 100 dB) for each blockerchannel and ACL channel (or for a subset thereof, such as deactivatingone or more receive elements in response to insufficient isolation, andsubsequently excluding from the optimization any blocker and ACLchannels associated with those receive elements; such excluded channelswould preferably also be excluded from optimizations performed insubsequent iterations of S311). However, S310 can additionally oralternatively include performing optimizations based on any othersuitable objective functions.

In some examples, performance of S312 (e.g., performance of a firstiteration of S312, such as initial performance during or followingsystem ‘boot-up’) can begin from a ‘zero’ state (e.g., wherein allcancellation parameters are initially set to zero), whereas in otherexamples, performance of S312 can begin from a pre-calibrated state,preferably wherein all cancellation parameters (or a subset thereof) areinitially set according to predetermined values, such as valuesdetermined based on a calibration of the system (e.g., calibrationperformed during and/or after integration of the system 100 with theMIMO system 200); however, S312 can additionally or alternatively beperformed using any other suitable starting state.

In one example of the second embodiment, S310 includes iterativelyrepeating S311 and S312 (e.g., alternating between S311 and S312, suchas shown by way of examples in FIGS. 2B-2C). In this example,performance of S311 is preferably constrained such that beamforming gainis not significantly reduced (e.g., reduced by more than a thresholdamount, such as 0.2, 0.5, 1, 2, 3, or 5 dB, etc.); however, S311 canadditionally or alternatively be constrained in any other suitablemanner, and/or can be performed without any such constraints. In aspecific example, S310 includes first performing S311 based primarily orentirely on one or more gain objectives (e.g., wherein the impacts ofbeamforming on isolation are ignored or considered only as a secondaryfactor), then performing S312 to improve blocker and/or ACL isolation(e.g., improve to a threshold level of performance for each channel,such as the final threshold or a lower ‘boot-up’ threshold), and thenrepeating to iterate between S311 and S312, preferably altering (e.g.,gradually altering such as altering by a small amount for each of aplurality of iterations, altering in one or more large steps, etc.) oneor more configuration parameters associated with one or both of S311 andS312 (e.g., for S311, the weight of isolation performance in theoptimization objective(s); for S312, the threshold isolationperformance; for one or both, a set of isolation channels excluded fromoptimization, such as channels associated with receive elements forwhich sufficient isolation cannot or has not been achieved withoutsignificant negative impacts on beamforming gain; etc.). In thisspecific example, S310 can include continuing to iterate between S311and S312 (e.g., indefinitely, until satisfaction of one or moreconvergence criteria, etc.) after these configuration parameteralterations, and/or can additionally or alternatively include making anyother suitable configuration parameter alterations and/or operating inany other suitable manner. Alternatively, S310 can include performingS312 first (e.g., before a first performance of S311), then performingS311, and then continuing to alternate between the two (e.g., for anysuitable period of time, number of iterations, and/or other threshold).

In some examples, S310 (e.g., S311 and/or S312) can include caching oneor more parameter values (e.g., optimized parameter values determined inperformance of S310, such as in performance of S311 and/or S312) and/orretrieving one or more previously-cached parameter values (e.g., whereinthe retrieved values can be used as a starting point for optimizationand/or can be used without further optimization). For example, when S310is performed for a particular set of uplink and downlink sub-bandassignments, the some or all optimized parameter values associated withthat set of sub-band assignments can be cached (e.g., caching thebeamforming parameter values determined in S311, caching the analog tapconfiguration parameter values determined in S312, etc.); during futureperformance of S310 (e.g., during a future communication slot) in whichsimilar or identical sub-band assignments are used, some or all of thesecached values can be retrieved and used (e.g., as a starting point forfurther optimization, in place of further optimization, etc.).

S310 is preferably performed continuously or periodically (e.g.,substantially continuously), but can additionally or alternatively beperformed sporadically, in response to trigger events (e.g., in responseto detection of changed conditions, such as new target UEs, significantdegradations or other changes in gain and/or isolation performance,etc.; in response to receipt of a re-optimization request, such as fromone or more UEs, from a network control entity, etc.; in response to anyother suitable triggers), be performed only once, and/or be performedwith any other suitable timing.

However, S310 can additionally or alternatively include determiningbeamforming and/or RF cancellation parameters in any other suitablemanner.

Operating based on the determined parameters S320 preferably functionsto enable performant, low-interference operation of a MIMO (e.g., mMIMO)communications system. S320 is preferably performed based on theoperation parameters determined in S310, but can additionally oralternatively be performed based on any other suitable information. S320is preferably performed in response to performance of S310 (e.g., uponcompletion of S310, concurrent with performance of S310, such asproceeding upon determination of the relevant operation parameters,etc.), but can additionally or alternatively be performed with any othersuitable timing.

S320 preferably includes configuring system elements based on theoperation parameters (e.g., determined in S310). The system elementsconfigured in S320 can include one or more: analog taps (and/or elementsthereof, such as scalers, phase shifters, delays, etc.) of a system forinterference cancellation, such as the system 100 described above;beamforming control elements (e.g., phase shifters, digital beamformingelements, etc.) of a MIMO communications system, such as the MIMO system200 described above; and/or any other suitable system elements. Forexample, S320 can include configuring one or more analog taps based onthe cancellation channel parameters (e.g., phase, gain, and/or delay foreach channel) determined in S310 and/or can include configuring one ormore beamforming control elements based on the beamforming parameters(e.g., transmit and/or receive beamforming coefficients) determined inS310 (and/or determined based on a subset of S310, such as performanceof S311 and/or S312. For example, beamforming parameters used in S320can be updated in response to performance of S311, and/or RFcancellation channel parameters used in S320 can be updated in responseto performance of S312; preferably, the next iteration of S312 isperformed after the beamforming parameters used in S320 are updatedbased on the most recent iteration of S311, and/or the next iteration ofS311 is performed after the RF cancellation channel parameters used inS320 are updated based on the most recent iteration of S312. However,S320 can additionally or alternatively include configuring any suitableelements in any suitable manner.

S320 preferably further includes (e.g., while the system elements areconfigured based on the operation parameters) operating the MIMOcommunications system to transmit and/or receive signals (e.g., toand/or from one or more target UEs).

However, S320 can additionally or alternatively include operating theMIMO communications system in any other suitable manner.

The method 300 can optionally include repeating one or more of theelements described above. For example, the method can include repeatingS310 to determine updated operation parameters (e.g., based on changesin the system, the surroundings, and/or the desired operation mode, suchas a change in position of one or more target UEs and/or other UEs,switching which UEs are targets for transmission and/or reception,etc.), and then performing S320 based on the updated operationparameters. The method (e.g., S310 and/or S320, any other suitableelements of the method, etc.) is preferably performed continuously,substantially continuously, and/or periodically (e.g., throughout a timeperiod, such as throughout operation of the MIMO system and/orthroughout any suitable subset thereof). For example, S310 can beperformed starting at or near a ‘boot-up’ event associated with the MIMOsystem 200 and/or the system 100, and/or continuing throughout operation(e.g., normal operation) of the MIMO system 200 and/or the system 100(e.g., until a ‘shut-down’ event and/or a switch to a differentoperation mode, etc.), wherein S320 is preferably performed in responseto performance of S310 (e.g., wherein S320 is performed based on eachupdated set of operation parameters determined by performance of S310,or determined based on a subset of S310, such as performance of S311and/or S312).

In some examples, S310 and/or S320 are performed (e.g., performed once,performed repeatedly, etc.) while communication assignments between theMIMO communication system and one or more UEs remain unchanged (e.g.,within a communication slot). Such communication assignments caninclude, in examples, one or more UEs targeted for downlink (e.g.,wherein the MIMO communication system transmits to the targeted UE(s)),one or more sub-bands for downlink communications, one or more UEstargeted for uplink (e.g., wherein the targeted UE(s) transmit to theMIMO communication system), and/or one or more sub-bands for uplinkcommunications; however, such communication assignments can additionallyor alternatively include any other suitable parameters. In some suchexamples, in response to a change in one or more communicationassignments (e.g., in response to one slot elapsing and a new slotbeginning), S310 and/or S320 may be performed again (e.g., performedonce, performed repeatedly, etc.), preferably functioning to optimizeMIMO communication system operation for the new communicationassignments.

However, the method can additionally or alternatively include performingone or more elements described above with any other suitable timing,and/or can include any other suitable elements performed in any suitablemanner.

Although omitted for conciseness, the preferred embodiments includeevery combination and permutation of the various system components andthe various method processes. Furthermore, various processes of thepreferred method can be embodied and/or implemented at least in part asa machine configured to receive a computer-readable medium storingcomputer-readable instructions. The instructions are preferably executedby computer-executable components preferably integrated with the system.The computer-readable medium can be stored on any suitable computerreadable media such as RAMs, ROMs, flash memory, EEPROMs, opticaldevices (CD or DVD), hard drives, floppy drives, or any suitable device.The computer-executable component is preferably a general or applicationspecific processing subsystem, but any suitable dedicated hardwaredevice or hardware/firmware combination device can additionally oralternatively execute the instructions.

The FIGURES illustrate the architecture, functionality and operation ofpossible implementations of systems, methods and computer programproducts according to preferred embodiments, example configurations, andvariations thereof. In this regard, each block in the flowchart or blockdiagrams may represent a module, segment, step, or portion of code,which comprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that, in somealternative implementations, the functions noted in the block can occurout of the order noted in the FIGURES. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently, or theblocks may sometimes be executed in the reverse order, depending uponthe functionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts, or combinations of special purpose hardware andcomputer instructions.

As a person skilled in the art will recognize from the previous detaileddescription and from the figures and claims, modifications and changescan be made to the preferred embodiments of the invention withoutdeparting from the scope of this invention defined in the followingclaims.

1. A method of interference cancellation for a multiple-inputmultiple-output (MIMO) communication system having a plurality oftransmit elements and a plurality of receive elements, the methodcomprising, while the MIMO communication system targets a first set ofuser equipment (UE) for downlink communications and targets a second setof UE for uplink communications: at an interference cancellation systemcomprising a plurality of analog taps, each analog tap of the pluralityconnected between a respective transmit element of the MIMOcommunication system and a respective receive element of the MIMOcommunication system, wherein each analog tap of the plurality isconfigurable: determining a first set of analog tap configurations byperforming a first optimum search, based on a first cancellationobjective function associated with a set of self-interference channelsdefined by the MIMO communication system, over an analog tapconfiguration parameter space associated with the plurality of analogtaps; and in response to determining the first set of analog tapconfigurations, configuring the plurality of analog taps based on thefirst set of analog tap configurations; while the plurality of analogtaps is configured based on the first set of analog tap configurations,determining a first beamforming configuration by performing a secondoptimum search, based on a first beamforming objective function, over abeamforming parameter space, wherein the first beamforming objectivefunction is associated with: the set of self-interference channels; atransmit gain for transmissions from the MIMO communication system tothe first set of UE; and a receive gain for transmissions from thesecond set of UE to the MIMO communication system; and in response todetermining the first beamforming configuration, providing informationindicative of the first beamforming configuration to the MIMOcommunication system; wherein each receive element of the plurality isassociated with a respective blocker channel of the set ofself-interference channels, wherein each transmit element of theplurality is associated with a respective adjacent-channel leakage (ACL)channel of the set of self-interference channels.
 2. The method of claim1, wherein determining the first set of analog tap configurations anddetermining the first beamforming configuration are performed during afirst time interval, wherein the MIMO communication system transmits tothe first set of UE and receives transmissions from the second set of UEsubstantially continuously throughout the first time interval.
 3. Themethod of claim 1, further comprising, while the MIMO communicationsystem targets the first set of UE for downlink communications andtargets the second set of UE for uplink communications, beforedetermining the first set of analog tap configurations: determining aninitial beamforming configuration by performing an initial optimumsearch, based on an initial beamforming objective function associatedwith the transmit gain and the receive gain, over the beamformingparameter space; and in response to determining the initial beamformingconfiguration, providing information indicative of the initialbeamforming configuration to the MIMO communication system.
 4. Themethod of claim 3, wherein: determining the first set of analog tapconfigurations and determining the first beamforming configuration areperformed during a first time interval; and the MIMO communicationsystem is configured based on the initial beamforming configurationthroughout the first time interval.
 5. The method of claim 4, wherein,in response to providing information indicative of the first beamformingconfiguration to the MIMO communication system, the MIMO communicationsystem is configured based on the first beamforming configuration. 6.The method of claim 3, wherein the initial beamforming objectivefunction is not associated with the set of self-interference channels.7. The method of claim 3, wherein: while determining the initialbeamforming configuration, the plurality of analog taps are configuredbased on a set of predetermined calibration configurations; and theinitial beamforming objective function is further associated with theset of self-interference channels.
 8. The method of claim 1, wherein:each analog tap of the plurality comprises a respective scaler and arespective phase shifter; and the first set of analog tap configurationscomprises, for each analog tap of the plurality, a respective scaleparameter associated with the respective scaler and a respective phaseparameter associated with the respective phase shifter.
 9. The method ofclaim 8, wherein: the plurality of analog taps comprises a first subsetof analog taps, wherein each analog tap of the first subset furthercomprises a respective delay; and the first set of analog tapconfiguration further comprises, for each analog tap of the firstsubset, a respective delay parameter associated with the respectivedelay.
 10. The method of claim 1, further comprising, while the MIMOcommunication system targets the first set of UE for downlinkcommunications and targets the second set of UE for uplinkcommunications, after providing the information indicative of the firstbeamforming configuration to the MIMO communication system: while theMIMO communication system is configured based on the first beamformingconfiguration, at the interference cancellation system, determining asecond set of analog tap configurations by performing a third optimumsearch, based on the first cancellation objective function, over theanalog tap configuration parameter space; in response to determining thesecond set of analog tap configurations, configuring the plurality ofanalog taps based on the second set of analog tap configurations; andwhile the plurality of analog taps is configured based on the second setof analog tap configurations: determining a second beamformingconfiguration by performing a fourth optimum search, based on a secondbeamforming objective function, over the beamforming parameter space;and in response to determining the second beamforming configuration,providing information indicative of the second beamforming configurationto the MIMO communication system; wherein: the first beamformingobjective function is associated with a first weighted sum of aself-interference channels metric and a gain metric, wherein the firstweighted sum defines a first weight ratio of a self-interferencechannels metric weight to a gain metric weight, wherein theself-interference channels metric is associated with the set ofself-interference channels, wherein the gain metric is associated withthe transmit gain and the receive gain; the second beamforming objectivefunction is associated with a second weighted sum of theself-interference channels metric and the gain metric, wherein thesecond weighted sum defines a second weight ratio of theself-interference channels metric weight to the gain metric weight,wherein the second weight ratio is substantially greater than the firstweight ratio.
 11. The method of claim 1, further comprising, while theMIMO communication system targets a third set of UE for downlinkcommunications and targets a fourth set of UE for uplink communications:at the interference cancellation system: determining a second set ofanalog tap configurations by performing a third optimum search, based onthe first cancellation objective function, over the analog tapconfiguration parameter space; and in response to determining the secondset of analog tap configurations, configuring the plurality of analogtaps based on the second set of analog tap configurations; while theplurality of analog taps is configured based on the second set of analogtap configurations, determining a second beamforming configuration byperforming a fourth optimum search, based on a second beamformingobjective function, over the beamforming parameter space, wherein thesecond beamforming objective function is associated with: the set ofself-interference channels; a transmit gain for transmissions from theMIMO communication system to the third set of UE; and a receive gain fortransmissions from the fourth set of UE to the MIMO communicationsystem; and in response to determining the second beamformingconfiguration, providing information indicative of the secondbeamforming configuration to the MIMO communication system.
 12. Themethod of claim 1, wherein the plurality of analog taps comprises M+Nanalog taps, wherein M is the number of transmit elements of the MIMOcommunication system and N is the number of receive elements of the MIMOcommunication system.
 13. The method of claim 12, wherein the number ofanalog taps in the plurality of analog taps is substantially less thanM*N.
 14. The method of claim 13, wherein the number of analog taps isless than 5√{square root over (M*N)}.
 15. The method of claim 1, whereinthe first beamforming configuration comprises a respective value foreach of a set of transmit beamforming coefficients and receivebeamforming coefficients associated with the MIMO communication system.16. The method of claim 15, wherein performing the second optimum searchcomprises: optimizing the set of transmit beamforming coefficients basedon the blocker channels of the set of self-interference channels andbased on the transmit gain; and optimizing the set of receivebeamforming coefficients based on the ACL channels of the set ofself-interference channels and based on the receive gain.
 17. The methodof claim 1, wherein the first set of UE comprises a first plurality ofUE.
 18. The method of claim 1, wherein: the MIMO communication systemcomprises a plurality of transmit chains, each transmit chain of theplurality comprising a respective transmit element and a respectivepower amplifier (PA); and for each analog tap of the plurality, theanalog tap is connected to a respective transmit chain between thetransmit element and the PA.
 19. The method of claim 18, wherein: theMIMO communication system further comprises a plurality of receivechains, each receive chain of the plurality comprising a respectivereceive element and a respective low-noise amplifier (LNA); and for eachanalog tap of the plurality, the analog tap is connected to a respectivereceive chain between the receive element and the LNA.
 20. The method ofclaim 1, wherein: the MIMO communication system further comprises aplurality of receive chains, each receive chain of the pluralitycomprising a respective receive element and a respective low-noiseamplifier (LNA); and for each analog tap of the plurality, the analogtap is connected to a respective receive chain between the receiveelement and the LNA.